<!DOCTYPE HTML>
<html lang="">

<head>
  <meta charset="UTF-8">
  <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  <title>简介 · GitBook</title>
  <meta http-equiv="X-UA-Compatible" content="IE=edge" />
  <meta name="description" content="">
  <meta name="generator" content="GitBook 3.2.3">




  <link rel="stylesheet" href="gitbook/style.css">




  <link rel="stylesheet" href="gitbook/gitbook-plugin-highlight/website.css">



  <link rel="stylesheet" href="gitbook/gitbook-plugin-search/search.css">



  <link rel="stylesheet" href="gitbook/gitbook-plugin-fontsettings/website.css">
  <link rel="stylesheet" href="styles/website.css">






















  <meta name="HandheldFriendly" content="true" />
  <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
  <meta name="apple-mobile-web-app-capable" content="yes">
  <meta name="apple-mobile-web-app-status-bar-style" content="black">
  <link rel="apple-touch-icon-precomposed" sizes="152x152" href="gitbook/images/apple-touch-icon-precomposed-152.png">
  <link rel="shortcut icon" href="gitbook/images/favicon.ico" type="image/x-icon">


  <link rel="next" href="USERDOC.html" />



</head>

<body>

  <div class="book">
    <div class="book-summary">


      <div id="book-search-input" role="search">
        <input type="text" placeholder="Type to search" />
      </div>


      <nav role="navigation">



        <ul class="summary">









          <li class="chapter active" data-level="1.1" data-path="./">

            <a href="./">


              简介

            </a>



          </li>

          <li class="chapter " data-level="1.2" data-path="USERDOC.html">

            <a href="USERDOC.html">


              用户文档

            </a>



          </li>




          <li class="divider"></li>

          <li>
            <a href="https://www.gitbook.com" target="blank" class="gitbook-link">
              Published with GitBook
            </a>
          </li>
        </ul>


      </nav>


    </div>

    <div class="book-body">

      <div class="body-inner">



        <div class="book-header" role="navigation">


          <!-- Title -->
          <h1>
            <i class="fa fa-circle-o-notch fa-spin"></i>
            <a href=".">简介</a>
          </h1>
        </div>




        <div class="page-wrapper" tabindex="-1" role="main">
          <div class="page-inner">

            <div id="book-search-results">
              <div class="search-noresults">

                <section class="normal markdown-section">

                  <h1 id="prophecis---a-one-stop-machine-learning-development-platform">Prophecis - A one stop machine
                    learning development platform</h1>
                  <p>
                    Prophecis&#x662F;&#x662F;&#x5FAE;&#x4F17;&#x94F6;&#x884C;&#x81EA;&#x7814;&#x7684;&#x4E00;&#x7AD9;&#x5F0F;&#x673A;&#x5668;&#x5B66;&#x4E60;&#x5E73;&#x53F0;&#xFF0C;&#x96C6;&#x6210;&#x591A;&#x79CD;&#x5F00;&#x6E90;&#x673A;&#x5668;&#x5B66;&#x4E60;&#x6846;&#x67B6;&#xFF0C;&#x5177;&#x5907;&#x673A;&#x5668;&#x5B66;&#x4E60;&#x8BA1;&#x7B97;&#x96C6;&#x7FA4;&#x7684;&#x591A;&#x79DF;&#x6237;&#x7BA1;&#x7406;&#x80FD;&#x529B;&#xFF0C;&#x63D0;&#x4F9B;&#x751F;&#x4EA7;&#x73AF;&#x5883;&#x5168;&#x6808;&#x5316;&#x5BB9;&#x5668;&#x90E8;&#x7F72;&#x4E0E;&#x7BA1;&#x7406;&#x670D;&#x52A1;&#x3002;Prophecis&#x4E3B;&#x8981;&#x5305;&#x542B;5&#x4E2A;&#x5173;&#x952E;&#x670D;&#x52A1;&#xFF1A;
                  </p>
                  <ul>
                    <li><strong>Prophecis
                        MLFlow</strong>&#xFF1A;&#x673A;&#x5668;&#x5B66;&#x4E60;&#x5206;&#x5E03;&#x5F0F;&#x5EFA;&#x6A21;&#x5DE5;&#x5177;&#xFF0C;&#x5177;&#x5907;&#x5355;&#x673A;&#x548C;&#x5206;&#x5E03;&#x5F0F;&#x6A21;&#x5F0F;&#x6A21;&#x578B;&#x8BAD;&#x7EC3;&#x80FD;&#x529B;&#xFF0C;&#x652F;&#x6301;Tensorflow&#x3001;Pytorch&#x3001;xgboost&#x7B49;&#x591A;&#x79CD;&#x673A;&#x5668;&#x5B66;&#x4E60;&#x6846;&#x67B6;&#xFF0C;&#x652F;&#x6301;&#x4ECE;&#x673A;&#x5668;&#x5B66;&#x4E60;&#x5EFA;&#x6A21;&#x5230;&#x90E8;&#x7F72;&#x7684;&#x5B8C;&#x6574;Pipeline&#xFF1B;
                    </li>
                    <li><strong>Prophecis
                        MLLabis</strong>&#xFF1A;&#x673A;&#x5668;&#x5B66;&#x4E60;&#x5F00;&#x53D1;&#x63A2;&#x7D22;&#x5DE5;&#x5177;&#xFF0C;&#x63D0;&#x4F9B;&#x5F00;&#x53D1;&#x63A2;&#x7D22;&#x670D;&#x52A1;&#xFF0C;&#x662F;&#x4E00;&#x6B3E;&#x57FA;&#x4E8E;Jupyter
                      Lab&#x7684;&#x5728;&#x7EBF;IDE&#xFF0C;&#x540C;&#x65F6;&#x652F;&#x6301;GPU&#x53CA;Hadoop&#x96C6;&#x7FA4;&#x7684;&#x673A;&#x5668;&#x5B66;&#x4E60;&#x5EFA;&#x6A21;&#x4EFB;&#x52A1;&#xFF0C;&#x652F;&#x6301;Python&#x3001;R&#x3001;Julia&#x591A;&#x79CD;&#x8BED;&#x8A00;&#xFF0C;&#x96C6;&#x6210;Debug&#x3001;TensorBoard&#x591A;&#x79CD;&#x63D2;&#x4EF6;&#xFF1B;
                    </li>
                    <li><strong>Prophecis Model
                        Factory</strong>&#xFF1A;&#x673A;&#x5668;&#x5B66;&#x4E60;&#x6A21;&#x578B;&#x5DE5;&#x5382;&#xFF0C;&#x63D0;&#x4F9B;&#x673A;&#x5668;&#x5B66;&#x4E60;&#x6A21;&#x578B;&#x5B58;&#x50A8;&#x3001;&#x6A21;&#x578B;&#x90E8;&#x7F72;&#x6D4B;&#x8BD5;&#x3001;&#x6A21;&#x578B;&#x7BA1;&#x7406;&#x7B49;&#x670D;&#x52A1;&#xFF1B;
                    </li>
                    <li><strong>Prophecis Data
                        Factory</strong>&#xFF1A;&#x673A;&#x5668;&#x5B66;&#x4E60;&#x6570;&#x636E;&#x5DE5;&#x5382;&#xFF0C;&#x63D0;&#x4F9B;&#x7279;&#x5F81;&#x5DE5;&#x7A0B;&#x5DE5;&#x5177;&#x3001;&#x6570;&#x636E;&#x6807;&#x6CE8;&#x5DE5;&#x5177;&#x548C;&#x7269;&#x6599;&#x7BA1;&#x7406;&#x7B49;&#x670D;&#x52A1;&#xFF1B;
                    </li>
                    <li><strong>Prophecis Application
                        Factory</strong>&#xFF1A;&#x673A;&#x5668;&#x5B66;&#x4E60;&#x5E94;&#x7528;&#x5DE5;&#x5382;&#xFF0C;&#x7531;&#x5FAE;&#x4F17;&#x94F6;&#x884C;&#x5927;&#x6570;&#x636E;&#x5E73;&#x53F0;&#x56E2;&#x961F;&#x548C;AI&#x90E8;&#x95E8;&#x8054;&#x5408;&#x5171;&#x5EFA;&#xFF0C;&#x57FA;&#x4E8E;&#x9752;&#x4E91;(QingCloud)&#x5F00;&#x6E90;&#x7684;Kubesphere&#x5B9A;&#x5236;&#x5F00;&#x53D1;&#xFF0C;&#x63D0;&#x4F9B;CI/CD&#x548C;DevOps&#x5DE5;&#x5177;&#xFF0C;GPU&#x96C6;&#x7FA4;&#x7684;&#x76D1;&#x63A7;&#x53CA;&#x544A;&#x8B66;&#x80FD;&#x529B;&#x3002;
                    </li>
                  </ul>
                  <h2 id="architecture">Architecture</h2>
                  <ul>
                    <li>
                      <h4 id="&#x6574;&#x4F53;&#x67B6;&#x6784;">&#x6574;&#x4F53;&#x67B6;&#x6784;</h4>
                      <p><img src="image/Prophecis&#x6574;&#x4F53;&#x67B6;&#x6784;.png" alt="Prophecis"></p>
                    </li>
                    <li>
                      <h4 id="&#x529F;&#x80FD;&#x7279;&#x8272;">&#x529F;&#x80FD;&#x7279;&#x8272;</h4>
                      <p><img src="image/Prophecis&#x529F;&#x80FD;&#x7279;&#x8272;.jpg"
                          alt="Prophecis&#x529F;&#x80FD;&#x7279;&#x8272;"></p>
                    </li>
                    <li>
                      <p>
                        <strong>&#x5168;&#x751F;&#x547D;&#x5468;&#x671F;&#x7684;&#x673A;&#x5668;&#x5B66;&#x4E60;&#x4F53;&#x9A8C;</strong>&#xFF1A;Prophecis&#x7684;
                        MLFlow &#x901A;&#x8FC7; AppJoint &#x53EF;&#x4EE5;&#x63A5;&#x5165;&#x5230; DataSphere Stdudio
                        &#x7684;&#x5DE5;&#x4F5C;&#x6D41;&#x4E2D;&#xFF0C;&#x652F;&#x6301;&#x4ECE;&#x6570;&#x636E;&#x4E0A;&#x4F20;&#x3001;&#x6570;&#x636E;&#x9884;&#x5904;&#x7406;&#x3001;&#x7279;&#x5F81;&#x5DE5;&#x7A0B;&#x3001;&#x6A21;&#x578B;&#x8BAD;&#x7EC3;&#x3001;&#x6A21;&#x578B;&#x8BC4;&#x4F30;&#x5230;&#x6A21;&#x578B;&#x53D1;&#x5E03;&#x7684;&#x673A;&#x5668;&#x5B66;&#x4E60;&#x5168;&#x6D41;&#x7A0B;&#xFF1B;
                      </p>
                    </li>
                    <li>
                      <strong>&#x4E00;&#x952E;&#x5F0F;&#x7684;&#x6A21;&#x578B;&#x90E8;&#x7F72;&#x670D;&#x52A1;</strong>&#xFF1A;Prophecis
                      MF &#x652F;&#x6301;&#x5C06;Prophecis MLFlow&#x3001;Prophecis MLLabis
                      &#x751F;&#x6210;&#x7684;&#x8BAD;&#x7EC3;&#x6A21;&#x578B;&#x4E00;&#x952E;&#x5F0F;&#x53D1;&#x5E03;&#x4E3A;
                      Restful API &#x6216;&#x8005; RPC
                      &#x63A5;&#x53E3;&#xFF0C;&#x5B9E;&#x73B0;&#x6A21;&#x578B;&#x5230;&#x4E1A;&#x52A1;&#x7684;&#x65E0;&#x7F1D;&#x8854;&#x63A5;&#xFF1B;
                    </li>
                    <li>
                      <strong>&#x673A;&#x5668;&#x5B66;&#x4E60;&#x5E94;&#x7528;&#x90E8;&#x7F72;&#x3001;&#x8FD0;&#x7EF4;&#x3001;&#x5B9E;&#x9A8C;&#x7684;&#x7EFC;&#x5408;&#x7BA1;&#x7406;&#x5E73;&#x53F0;</strong>&#xFF1A;&#x57FA;&#x4E8E;&#x793E;&#x533A;&#x5F00;&#x6E90;&#x65B9;&#x6848;&#x5B9A;&#x5236;&#xFF0C;&#x63D0;&#x4F9B;&#x5B8C;&#x6574;&#x7684;&#x3001;&#x53EF;&#x9760;&#x7684;&#x3001;&#x9AD8;&#x5EA6;&#x7075;&#x6D3B;&#x7684;&#x4F01;&#x4E1A;&#x7EA7;&#x673A;&#x5668;&#x5B66;&#x4E60;&#x5E94;&#x7528;&#x53D1;&#x5E03;&#x3001;&#x76D1;&#x63A7;&#x3001;&#x670D;&#x52A1;&#x6CBB;&#x7406;&#x3001;&#x65E5;&#x5FD7;&#x6536;&#x96C6;&#x548C;&#x67E5;&#x8BE2;&#x7B49;&#x7BA1;&#x7406;&#x5DE5;&#x5177;&#xFF0C;&#x5168;&#x65B9;&#x4F4D;&#x5B9E;&#x73B0;&#x5BF9;&#x673A;&#x5668;&#x5B66;&#x4E60;&#x5E94;&#x7528;&#x7684;&#x7BA1;&#x63A7;&#xFF0C;&#x6EE1;&#x8DB3;&#x4F01;&#x4E1A;&#x5BF9;&#x4E8E;&#x673A;&#x5668;&#x5B66;&#x4E60;&#x5E94;&#x7528;&#x5728;&#x7EBF;&#x4E0A;&#x751F;&#x4EA7;&#x73AF;&#x5883;&#x7684;&#x6240;&#x6709;&#x5DE5;&#x4F5C;&#x8981;&#x6C42;&#x3002;
                    </li>
                  </ul>
                  <h2 id="quick-start-guide">Quick Start Guide</h2>
                  <h3 id="prerequisites">Prerequisites</h3>
                  <ul>
                    <li>Kubernetes 1.15.6+</li>
                    <li>Helm 3</li>
                    <li>Nvidia-docker (&#x53EF;&#x9009;)</li>
                    <li>K8s-device-plugin (&#x53EF;&#x9009;)</li>
                    <li>Cuda (&#x53EF;&#x9009;)</li>
                  </ul>
                  <h4 id="install-using-helm-3">Install using Helm 3</h4>
                  <pre><code class="lang-shell">kubectl create namespace prophecis

helm install prophecis .
</code></pre>
                  <h2 id="configurations">Configurations</h2>
                  <ul>
                    <li>
                      <h5 id="&#x53C2;&#x8003;&#x914D;&#x7F6E;&#x6587;&#x6863;">
                        &#x53C2;&#x8003;&#x914D;&#x7F6E;&#x6587;&#x6863;</h5>
                    </li>
                  </ul>
                  <ul>
                    <li>
                      <h5
                        id="&#x670D;&#x52A1;&#x5B9E;&#x65F6;&#x914D;&#x7F6E;&#x66F4;&#x65B0;&#xFF08;&#x90E8;&#x5206;&#x914D;&#x7F6E;&#x9700;&#x8981;&#x91CD;&#x65B0;&#x90E8;&#x7F72;&#xFF09;">
                        &#x670D;&#x52A1;&#x5B9E;&#x65F6;&#x914D;&#x7F6E;&#x66F4;&#x65B0;&#xFF08;&#x90E8;&#x5206;&#x914D;&#x7F6E;&#x9700;&#x8981;&#x91CD;&#x65B0;&#x90E8;&#x7F72;&#xFF09;
                      </h5>
                      ```shell<h1 id="&#x5B9E;&#x65F6;&#x66F4;&#x65B0;">&#x5B9E;&#x65F6;&#x66F4;&#x65B0;</h1>
                      helm upgrade prophecis
                    </li>
                  </ul>
                  <h1 id="&#x91CD;&#x65B0;&#x90E8;&#x7F72;">&#x91CD;&#x65B0;&#x90E8;&#x7F72;</h1>
                  <p>helm delete prophecis
                    cd ${prophecis_dir}/base
                    helm install prophecis .</p>
                  <pre><code>

## Developing
Prerequisites:
- Go &gt;= 1.13.1
- Docker &gt;= 18.03.1
```shell
mkdir -p  $(prophecis_dir)
cd $(prophecis_dir)
git clone git@github.com:WeBankFinTech/Prophecis.git

cd prophecis/base
./sh go_build.sh

./sh docker_build.sh
</code></pre>
                  <h2 id="roadmap">Roadmap</h2>
                  <ul>
                    <li>
                      <h4 id="prophecis-v010">Prophecis v0.1.0</h4>
                      <ul>
                        <li>MLLabis<ul>
                            <li>
                              &#x591A;&#x79DF;&#x6237;&#x9694;&#x79BB;&#x7684;&#x4E2A;&#x4EBA;&#x5F00;&#x53D1;&#x73AF;&#x5883;(Jupyter
                              Lab)</li>
                            <li>
                              &#x5927;&#x6570;&#x636E;&#x5F00;&#x53D1;&#x65B9;&#x6848;(Livy&amp;&#x539F;&#x751F;&#x65B9;&#x6848;)
                            </li>
                            <li>LinkisMagic</li>
                          </ul>
                        </li>
                        <li>Control Center &amp;&amp; UI <ul>
                            <li>&#x7528;&#x6237;&#x7BA1;&#x7406;&#x53F0;</li>
                            <li>Namespace&#x3001;&#x5B58;&#x50A8;&#x3001;&#x8D44;&#x6E90;&#x7BA1;&#x7406;</li>
                          </ul>
                        </li>
                        <li>Base<ul>
                            <li>&#x670D;&#x52A1;&#x90E8;&#x7F72;&#x811A;&#x672C;</li>
                          </ul>
                        </li>
                      </ul>
                    </li>
                    <li>
                      <h4 id="prophecis-v020">Prophecis v0.2.0</h4>
                      <ul>
                        <li>MLFlow<ul>
                            <li>&#x5206;&#x5E03;&#x5F0F;&#x5EFA;&#x6A21;</li>
                            <li>&#x6279;&#x91CF;&#x4EFB;&#x52A1;&#x8BA1;&#x7B97;&#x3001;&#x544A;&#x8B66;</li>
                            <li>CLI</li>
                          </ul>
                        </li>
                        <li>Base<ul>
                            <li>
                              &#x57FA;&#x7840;&#x5E73;&#x53F0;&#x81EA;&#x52A8;&#x5316;&#x90E8;&#x7F72;&#x811A;&#x672C;&#xFF08;Kubernetes/Docker/GPU&#xFF09;
                            </li>
                          </ul>
                        </li>
                      </ul>
                    </li>
                    <li>
                      <h4 id="prophecis-v030">Prophecis v0.3.0</h4>
                      <ul>
                        <li>Model Factory&#xFF08;&#x6A21;&#x578B;&#x5DE5;&#x5382;&#xFF09;<ul>
                            <li>&#x6A21;&#x578B;&#x90E8;&#x7F72;</li>
                          </ul>
                        </li>
                        <li>Application Factory&#xFF08;&#x5E94;&#x7528;&#x5DE5;&#x5382;&#xFF09;<ul>
                            <li>&#x8D44;&#x6E90;&#x7BA1;&#x7406;&#x3001;&#x76D1;&#x63A7;</li>
                          </ul>
                        </li>
                      </ul>
                    </li>
                  </ul>
                  <h2 id="contributing">Contributing</h2>
                  <p>
                    &#x975E;&#x5E38;&#x6B22;&#x8FCE;&#x5E7F;&#x5927;&#x7684;&#x793E;&#x533A;&#x4F19;&#x4F34;&#x7ED9;&#x6211;&#x4EEC;&#x8D21;&#x732E;&#x65B0;&#x5F15;&#x64CE;&#x548C;&#x4EE3;&#x7801;&#xFF01;
                  </p>
                  <h2 id="communication">Communication</h2>
                  <p>
                    &#x5982;&#x679C;&#x60A8;&#x60F3;&#x5F97;&#x5230;&#x6700;&#x5FEB;&#x7684;&#x54CD;&#x5E94;&#xFF0C;&#x8BF7;&#x7ED9;&#x6211;&#x4EEC;&#x63D0;issue&#xFF0C;&#x6216;&#x8005;&#x60A8;&#x4E5F;&#x53EF;&#x4EE5;&#x626B;&#x7801;&#x8FDB;&#x7FA4;&#xFF1A;
                  </p>
                  <p><img src="image/Communication.png" alt="Communication"></p>
                  <h2 id="license">License</h2>
                  <p>Prophecis is under the Apache 2.0 license. See the LICENSE file for details.</p>


                </section>

              </div>
              <div class="search-results">
                <div class="has-results">

                  <h1 class="search-results-title"><span class='search-results-count'></span> results matching "<span
                      class='search-query'></span>"</h1>
                  <ul class="search-results-list"></ul>

                </div>
                <div class="no-results">

                  <h1 class="search-results-title">No results matching "<span class='search-query'></span>"</h1>

                </div>
              </div>
            </div>

          </div>
        </div>

      </div>




      <a href="USERDOC.html" class="navigation navigation-next navigation-unique" aria-label="Next page: 用户文档">
        <i class="fa fa-angle-right"></i>
      </a>



    </div>

    <script>
      var gitbook = gitbook || [];
      gitbook.push(function () {
        gitbook.page.hasChanged({ "page": { "title": "简介", "level": "1.1", "depth": 1, "next": { "title": "用户文档", "level": "1.2", "depth": 1, "path": "USERDOC.md", "ref": "USERDOC.md", "articles": [] }, "dir": "ltr" }, "config": { "gitbook": "*", "theme": "default", "variables": {}, "plugins": [], "pluginsConfig": { "highlight": {}, "search": {}, "lunr": { "maxIndexSize": 1000000, "ignoreSpecialCharacters": false }, "sharing": { "facebook": true, "twitter": true, "google": false, "weibo": false, "instapaper": false, "vk": false, "all": ["facebook", "google", "twitter", "weibo", "instapaper"] }, "fontsettings": { "theme": "white", "family": "sans", "size": 2 }, "theme-default": { "styles": { "website": "styles/website.css", "pdf": "styles/pdf.css", "epub": "styles/epub.css", "mobi": "styles/mobi.css", "ebook": "styles/ebook.css", "print": "styles/print.css" }, "showLevel": false } }, "structure": { "langs": "LANGS.md", "readme": "README.md", "glossary": "GLOSSARY.md", "summary": "SUMMARY.md" }, "pdf": { "pageNumbers": true, "fontSize": 12, "fontFamily": "Arial", "paperSize": "a4", "chapterMark": "pagebreak", "pageBreaksBefore": "/", "margin": { "right": 62, "left": 62, "top": 56, "bottom": 56 } }, "styles": { "website": "styles/website.css", "pdf": "styles/pdf.css", "epub": "styles/epub.css", "mobi": "styles/mobi.css", "ebook": "styles/ebook.css", "print": "styles/print.css" } }, "file": { "path": "README.md", "mtime": "2020-12-04T07:56:19.928Z", "type": "markdown" }, "gitbook": { "version": "3.2.3", "time": "2020-12-04T08:03:26.433Z" }, "basePath": ".", "book": { "language": "" } });
      });
    </script>
  </div>


  <script src="gitbook/gitbook.js"></script>
  <script src="gitbook/theme.js"></script>


  <script src="gitbook/gitbook-plugin-search/search-engine.js"></script>



  <script src="gitbook/gitbook-plugin-search/search.js"></script>



  <script src="gitbook/gitbook-plugin-lunr/lunr.min.js"></script>



  <script src="gitbook/gitbook-plugin-lunr/search-lunr.js"></script>



  <script src="gitbook/gitbook-plugin-sharing/buttons.js"></script>



  <script src="gitbook/gitbook-plugin-fontsettings/fontsettings.js"></script>



</body>

</html>